import 'package:flutter/material.dart';

class Styles {
  static const Color mainThemeColor = Colors.orange;
  static const Color shadowColor = Color.fromRGBO(1, 1, 1, 0.3);
  static const Color lightColor = Colors.white;
  static const Color backgroundColor = Color.fromRGBO(255, 217, 217, 1.0);
  static const Color codeBGColor = Color.fromRGBO(253, 237, 237, 1.0);
  static const Color textMainColor = Colors.black;
  static const Color textTranslucentColor = Color.fromRGBO(0, 0, 0, 0.5);
  static const Color transparent = Colors.transparent;
  static const Color dividerColor = Color.fromRGBO(0, 0, 0, 0.5);
  static const Color favorite = Colors.red;
  static TextStyle textStyleNormal(double size) {
    return _textStyleNormal(size);
  }

  static TextStyle textStyleMedium(double size) {
    return _textStyleMedium(size);
  }

  static TextStyle textStyleBold(double size) {
    return _textStyleBold(size);
  }

  ///半透明字体
  static TextStyle textTransparentNormal(double size) {
    return _textStyleNormal(size).copyWith(color: textTranslucentColor);
  }

  static TextStyle textTransparentMedium(double size) {
    return _textStyleMedium(size).copyWith(color: textTranslucentColor);
  }

  static TextStyle textTransparentBold(double size) {
    return _textStyleBold(size).copyWith(color: textTranslucentColor);
  }

  ///主题色字体
  static TextStyle textThemeNormal(double size) {
    return _textStyleNormal(size).copyWith(color: mainThemeColor);
  }

  static TextStyle textThemeMedium(double size) {
    return _textStyleMedium(size).copyWith(color: mainThemeColor);
  }

  static TextStyle textThemeBold(double size) {
    return _textStyleBold(size).copyWith(color: mainThemeColor);
  }

  static TextStyle _textStyleNormal(double size) {
    return TextStyle(
      fontSize: size,
      fontWeight: FontWeight.w400,
      color: Styles.textMainColor,
    );
  }

  static TextStyle _textStyleMedium(double size) {
    return TextStyle(
      fontSize: size,
      fontWeight: FontWeight.w600,
      color: Styles.textMainColor,
    );
  }

  static TextStyle _textStyleBold(double size) {
    return TextStyle(
      fontSize: size,
      fontWeight: FontWeight.w800,
      color: Styles.textMainColor,
    );
  }
}
